package test2;

public class demo103 {
    /*
    *  1 2 3 4                  从左往右记录，往下再往左，然后往上，顺时针遍历这个矩阵
    *  5 6 7 8                螺旋矩阵的最终结果[1,2,3,4,8,3,0,1,9,5,6,7]
    *  9 1 0 3
    * */
/*    class Solution {
        public List<Integer> spiralOrder(int[][] matrix) {
            //求宽和高

            List<Integer> list = new ArrayList<Integer>();
            if(matrix==null || matrix.length==0) return list;
            //列
            int r = matrix[0].length;
            //行
            int c = matrix.length;
            int i = 0;
            //统计由外向内有多少个矩阵
            int count = (Math.min(r,c)+1)/2;

            //从外圈向内圈遍历，一圈一圈地打印
            while(i<count)
            {
                //从左往右
                for(int j = i; j< r-i; j++){
                    list.add(matrix[i][j]);
                }
                //从上往下
                for(int j = i+1; j< c-i; j++)
                {
                    list.add(matrix[j][(r-1)-i]);
                }
                //从右往左
                for(int j = (r-1)-(i+1);j>=i&& (c-1-i != i);j--)
                {
                    list.add(matrix[c-1-i][j]);
                }
                for(int j = (c-1)-(i+1); j>=i+1&&(r-1-i)!=i;j--)
                {
                    list.add(matrix[j][i]);
                }
                //从下往上
                i++;
            }
            return list;

        }
    }*/
}
